﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;

namespace CotizacionPresencialPaquetes.Models
{
    public class ContextParameter
    {
        const string PARAMETER_NAME = "ParameterData";
        public int IdSucursal { get; set; }
        public string Usuario { get; set; }
        public int IdVendedor { get; set; }
        public int IdCanal { get; set; }

        public static ContextParameter GetDataContext(Controller controller)
        {
            int _IdSucursal;
            int _IdVendedor;
            int _IdCanal;
            ContextParameter result = new ContextParameter();
            
            string parameter = controller.Session[PARAMETER_NAME] as string;

            if (parameter == null)
                return null;
            if (parameter.Split('|').Length >= 3)
            {
                if (int.TryParse(parameter.Split('|')[0], out _IdVendedor))
                    result.IdVendedor = _IdVendedor;
                if (int.TryParse(parameter.Split('|')[1], out _IdSucursal))
                    result.IdSucursal = _IdSucursal;
                result.Usuario = parameter.Split('|')[2];
                if (parameter.Split('|').Length > 3 && int.TryParse(parameter.Split('|')[3], out _IdCanal))
                    result.IdCanal = _IdCanal;
            }
            return result;
        }

        public static void SetDataContext(Controller controller, string ParameterData)
        {
            controller.Session[PARAMETER_NAME] = ParameterData;
        }
    }
}